1. Technical Field
The present invention relates in general to displaying stored files and in particular to the caching and displaying of files on a client system of a network. Still more particularly, the present invention relates to a method and system for identifying to a user when files being displayed on a client system of a network are cached files.
2. Description of the Related Art
Local Area Networks (LAN) are known in the computer industry. The need for newer and more versatile applications of LAN systems has led to the development of computerized distributed information resources, such as the xe2x80x9cIntranet.xe2x80x9d Another improvement has been the development of shared-distributed systems, which allow simultaneous access to and editing of a single server-based document or file by multiple users. As the traditional workplace evolves and becomes more geographically dispersed, individuals working on a single project may be based at different locations within a company and complete projects via a shared-distributed network. There is thus a developing need for improved shared-distributed networks.
Shared-distributed networks are based on client-server software architectures. These architectures provide a versatile infrastructure that supports shared access to server resources, such as filesystems. A client is a requester of services, and a server is the provider of services. A single machine can be both a client and a server depending on the software configuration. A client machine is loaded with client software, while a server machine is loaded with server software.
The information provided by a server can be in the form of programs which run locally on a given client terminal, or in the form of data, such as files, that may be used by other programs. In shared-distributed netorks, when files are retrieved by a client from a server, the client often caches the file temporarily within its local storage area (i.e., memory or cache).
Caching is a generic term meaning xe2x80x9cto store.xe2x80x9d It typically is completed to avert network traffic. As applied to the shared-distributed network, xe2x80x9ccachingxe2x80x9d means xe2x80x9cthe copying of a file, made incidental to the first access to the file, and storage of that copy for that purpose of speeding subsequent access.xe2x80x9d Thus, a copy of a file previously retrieved off the Intranet is locally stored. The caching of files allows a user to repeatedly view the file within a short span of time without having to retrieve the file from the server each time. Caching thus allows for faster reloading of the file or document at the client.
Presently, when a client requests a file, the client will first check to see if the file requested already resides in the client""s cache. If the client""s cache has a copy of the requested file, then the file is loaded from the client""s cache. If the data is not in the cache, the client fetches the file from the server. The fetched file is provided to the client, where it is stored in the cache. Providing a client with a cached copy of a file occurs quickly because the process of loading the file requires reduced network activity. Thus, caching reduces the computational load on the server.
Since each client in a distributed system has a copy of and may edit the file, any client may update the server copy of the file. Alternatively, the network system""s manager may make changes to a file. Thus, an updated version (version 2) of the file may exist on the server while an older version (version 1) exist on the clients until the client reloads the file from the server. When a client, which has an older version of the file stored on its cache loads the file, the cached version of the file is retrieved (i.e., the older version and not the newer version located on the server).
Thus, one of the drawbacks with the present method of displaying cached files on a client is that in dynamic systems, the cached information may at times be old or stale. With distributed systems, for example, a problem exists with the use of cache data by a client. Distributed clients may require the most current version of a particular file being shared by other clients. When the client receives cached files, which are not current (i.e., the content of the file on the server has been changed since the cached copy of the file was stored) the user may be interacting with outdated information.
In a complex interactive process, displaying of different versions of a file to different clients may pose a significant problems. In some instances, it is important to have the newest version of the file from the server on display; however, there are times when the user does not require the newest version or really prefers to have an older version of the file. The latter case may occur because the user does not wish to waste time waiting for the newer version to download, particularly when the information present in the older version is sufficient.
Current caching technology is hidden and most users are unaware when the file being displayed is a cached copy. Some files may contain a time/date stamp; however in most cases, the software/application is set to automatically update the time/date each time the file is accessed giving the user the perception that the file has just been retrieved. Thus, the time/date stamp is an unreliable indicator about the status of the file being retrieved. Currently, a user receives no indication as to whether the file being displayed is the most current version, or the user is forced to wait while the request is sent to the server even when a cached copy of the file would be appropriate.
The present invention recognizes that it would therefore be desirable to have a method and system for indicating to a user whether a retrieved file displayed on a client is a cached file or newly downloaded file. A method and system which allow a user to determine the current status of the displayed file would be a welcomed improvement.
The foregoing objects are achieved as is now described. A modified client within a network for use in accessing and displaying cached files is disclosed. The modified client has a client application and a cache (or memory) which caches a copy of a file downloaded from the network server. When a particular file is requested, logic components within the client application determine if the requested file is resident in the cache. If the requested file is resident in the cache, the file is displayed within a graphical user interface (GUI) of the client application along with an indicator by which the user is notified that the retrieved file being displayed is a cached file. In one embodiment, the indicator is a cache message button which is displayed within the application GUI. In another embodiment, the indicator is a color coded scheme which causes the file or file border to be displayed in a different color whenever the particular page is cached. In a third embodiment, the indicator is presented as an interactive dialog box having instructions to the user to select a refresh option if display of the cached paged is not desired.
The above as well as additional objectives, features, and advantages of the present invention will become apparent in the following detailed written description.